package com.atguigu.edu.realtime.bean;

import com.alibaba.fastjson.annotation.JSONField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Set;

/**
 * ClassName: TradeProvinceOrderBean
 * Package: com.atguigu.edu.realtime.bean
 * Description:
 *
 * @Author Mr.2
 * @Create 2023/9/12 9:40
 * @Version 1.0
 */
@Data
@AllArgsConstructor
@Builder
public class TradeProvinceOrderBean {
    // 窗口起始时间
    String stt;
    // 窗口结束时间
    String edt;
    // 省份 ID
    String provinceId;
    // 省份名称
    @Builder.Default
    String provinceName = "";

    //    String orderId;
    // 做个修改 文档: String orderId; --> Set orderIdSet;
    // 文档里, 是第1种实现方案; 现在使用Set集合, 是第2种实现方案, 用来辅助计算下单次数的。
    // 订单 ID; 使用Set 集合, Set特点:无序、不重复; 为什么？
    @JSONField(serialize = false)
    Set orderIdSet;

    // 当前日期 --> Doris 动态分区字段
    String curDate;
    // 累计下单次数
    Long orderCount;
    // 累计下单金额
    BigDecimal finalAmount;
    // 时间戳
    @JSONField(serialize = false)
    Long ts;
}
